home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Disc to the Future 2
/
Disc to the Future Part II Programmer's Reference (Wayzata Technology)(6013)(1992).bin
/
MAC
/
THINKC
/
5
/
CHASSIS_
/
MOUSEDOW.C
< prev
next >
Wrap
Text File
|
1992-05-14
|
2KB
|
62 lines
/************************************************************************************/
/* MouseDownProc */
/************************************************************************************/
#include "MyHeaders.h"
int MouseDownProc()
{
int MouseDRetCode = 0;
Boolean passEvtFlag = TRUE;
myMouseWhere = FindWindow(myEvent.where, &workWindowPtr); /* Get loc. of click*/
switch (myMouseWhere) /* do things depending on loc. */
{
case (inDesk): /* if just on desktop, do nada */
break;
case (inSysWindow): /* If in a system window */
SystemClick (&myEvent, workWindowPtr); /* give it to Desk Manager */
break;
case (inMenuBar): /* If in the menu bar */
worklong = MenuSelect(myEvent.where); /* get menu ID and item no. */
if (worklong) /* if in a menu */
WorkRetCode = MenuProc(worklong); /* perform menu command */
break;
default: /* Must be in window structure */
WorkRetCode = WhichWindow(workWindowPtr, &k); /* match ptr to table */
if (WorkRetCode == 0) /* if it's a good match */
{
windSub = k;
if (FrontWindow()!=windTbl[windSub].windPtr) /* not active? */
{
SelectWindow (windTbl[windSub].windPtr); /* activate it */
if (myMouseWhere != inDrag) /* process mouseDown more only */
passEvtFlag = FALSE; /* if it is in the drag region */
}
if (passEvtFlag)
{
switch (windTbl[windSub].windRec.refCon) /* window type */
{
case (ProcMain):
WorkRetCode = MainWindowProc();
break;
case (ProcText):
WorkRetCode = TextWindowProc();
break;
case (ProcHelp):
WorkRetCode = HelpWindowProc();
break;
}
}
}
break;
}
return MouseDRetCode;
}